Implant Magnet Distance Determination

ABSTRACT

A method is described for estimating skin thickness over an implanted magnet. A plane is defined that is perpendicular to the skin of a patient over an implanted magnet and characterized by x- and y-axis coordinates. The magnetic field strength of the implanted magnet is measured using an array of magnetic sensors on the skin of the patient. From the measured magnetic field strength, at least one x-axis coordinate in the plane is determined for at least one y-axis zero position on the array where a y-axis component of the measured magnetic field strength is zero. From that, a y-axis coordinate of the at least one y-axis zero is calculated as a function of the at least one x-axis coordinate, such that the y-axis coordinate represents thickness of the skin over the implanted magnet.

This application claims priority from U.S. Provisional PatentApplication 61/895,070, filed Oct. 24, 2014, which is incorporatedherein by reference in its entirety.

FIELD OF THE INVENTION

The present invention relates to implantable medical devices, andspecifically, to estimating the location of magnetic elements in suchdevices.

BACKGROUND ART

Some implantable medical systems such as Middle Ear Implants (MEI's) andCochlear Implants (CI's) employ attachment magnets in the implantablepart and an external part to hold the external part magnetically inplace over the implant. For example, as shown in FIG. 1, a typicalcochlear implant system may include an external transmitter housing 101containing transmitting coils 102 and an external attachment magnet 103.The external attachment magnet 103 has a conventional disk-shape and anorth-south magnetic dipole having an axis that is perpendicular to theskin of the patient to produce external magnetic field lines 104 asshown. Implanted under the patient's skin is a corresponding receiverassembly 105 having similar receiving coils 106 and an implant magnet107. The implant magnet 107 also has a disk-shape and a north-southmagnetic dipole having a magnetic axis that is perpendicular to the skinof the patient to produce internal magnetic field lines 108 as shown.The internal receiver housing 105 is surgically implanted and fixed inplace within the patient's body. The external transmitter housing 101 isplaced in proper position over the skin covering the internal receiverassembly 105 and held in place by interaction between the internalmagnetic field lines 108 and the external magnetic field lines 104. Rfsignals from the transmitter coils 102 couple data and/or power to thereceiving coil 106 which is in communication with an implanted processormodule (not shown).

After implantation of such devices, sometimes problems can arise such asinadequate magnetic holding force of the external part. In suchcircumstances, the exact distance from the skin surface to the implantmagnet is generally unknown, so it would not be clear if the problem isbecause the distance is too great or the implant magnet has partiallylost magnetization. During implantation, the surgeon can physicallymeasure the skin thickness over the implant, but that is not possibleafter the surgery. An absolute magnetic field measurement may bepossible if the magnetization strength is known, but that may notgenerally be the case.

U.S. Pat. No. 7,561,051 describes a device that is able to determine thelocation of an implanted magnet by a passive measurement of the magneticfield. The device uses magnetic sensors in an array that can measure thedirection of the magnetic field and the magnetic field strength. Thedistance calculation used is complicated and computationally demanding,making this approach less useful for battery operated devices.

SUMMARY OF THE INVENTION

Embodiments of the present invention are directed to a method forestimating skin thickness over an implanted magnet. A plane is definedthat is perpendicular to the skin of a patient over an implanted magnetand characterized by x- and y-axis coordinates. The magnetic fieldstrength of the implanted magnet is measured using an array of magneticsensors on the skin of the patient. From the measured magnetic fieldstrength, at least one x-axis coordinate in the plane is determined forat least one y-axis zero position on the array where a y-axis componentof the measured magnetic field strength is zero. From that, a y-axiscoordinate of the at least one y-axis zero is calculated as a functionof the at least one x-axis coordinate, such that the y-axis coordinaterepresents thickness of the skin over the implanted magnet.

In further specific embodiments, the x-axis coordinates may bedetermined for two y-axis zero positions. The magnetic field strengthmay be measured using a one-dimensional or two-dimensional sensor array.Before taking the magnetic field strength measurements, the sensor arraymay be aligned by user interaction or without user interaction.Calculating the y-axis coordinate may further be a function of magneticdipole moment rotation angle, and may be based on an iterativecalculation process, or on a single step non-iterative calculationprocess. Calculating the y-axis coordinate also may be based on atrigonometric or non-trigonometric calculation process.

BRIEF DESCRIPTION OF THE DRAWINGS

The patent or application file contains at least one drawing executed incolor. Copies of this patent or patent application publication withcolor drawing(s) will be provided by the Office upon request and paymentof the necessary fee.

FIG. 1 shows portions of a typical cochlear implant system.

FIG. 2 shows an axis-symmetric simulation with magnetic field lines foran axially magnetized implant magnet.

FIG. 3 shows a graph of the corresponding normal component of themagnetic field measured in FIG. 2.

FIG. 4 shows an example of the magnetic field vector lines for a givenmagnetic dipole moment vector.

FIG. 5 A-B shows an example of the magnetic field vector lines for agiven magnetic dipole moment vector having a rotation angle of 20°.

FIG. 6 shows a graph of relative error of the y-coordinate calculationfor specific rotation angles over three iterations.

FIG. 7 shows a graph of relative error of the y-coordinate calculationfor specific rotation angles for a single step non-iterative processwith different weighting factors.

FIG. 8 A-B shows the inverse functions f and g for derivation of theangle α from the ratio of the distances x_(1m) and x_(2m).

FIG. 9 A-B shows aligning with user interaction a one-dimensional sensorarray for making magnetic field measurements.

FIG. 10 A-C show aligning without user interaction a one-dimensionalsensor array for making magnetic field measurements.

FIG. 11 A-B show using a two-dimensional sensor array for makingmagnetic field measurements.

DETAILED DESCRIPTION OF SPECIFIC EMBODIMENTS

In general, the absolute magnetic field strength is not known aftersurgery so cannot be used as the basis for measuring distance to theimplant magnet (skin thickness over the magnet). But the magnetic fieldlines as such are independent of the magnetization strength. Therefore adistance estimate can be made based on the field direction, which wouldneed measurements of the magnetic field strength at different positions.The lowest distance for measurements is the plane of the skin surface.

FIG. 2 is an axis-symmetric simulation showing the magnetic field linesof an axial magnetized implant magnet 201, evaluating the normal fieldcomponent along a field evaluation line 202 parallel to the implantmagnet 201 (y is held constant). FIG. 3 shows a graph of thecorresponding normal component of the magnetic field along the axis forthe given field evaluation line 202. Since the absolute strength of themagnetic field is not needed, the field evaluation values are normalizedto the value at x-axis zero position. At some point for each pole, therewill be a zero y-component point 203 (B_(y)=0). In FIG. 3, they-component will be zero at the zero crossing of the field evaluationlines on the y-axis. By determining the x-axis coordinate for the zeroy-component point 203, it is then possible to calculate the y-coordinateat that point.

Explaining more fully and rigorously, the magnetic moment m of amagnetic field can be characterized by a vector potential:

${A(r)} = {\frac{\mu_{0}}{4\; \pi}\frac{m \times r}{r^{3}}}$

and the field of a magnetic dipole moment can be represented in terms ofa magnetic flux density B(r):

${B(r)} = {{\nabla{\times A}} = {\frac{\mu_{0}}{4\; \pi}\left( {\frac{3{r\left( {m \cdot r} \right)}}{r^{5}} - \frac{m}{r^{3}}} \right)}}$

The dipole moment is oriented in y-direction and positioned at theorigin of a Cartesian coordinate system:

$m = {m\begin{pmatrix}0 \\1 \\0\end{pmatrix}}$

The orientation of the magnetic dipole in this case is defined to beperpendicular to the patient skin. And an observing point is thenlocated at:

${r = \begin{pmatrix}x \\y \\z\end{pmatrix}},{r = \sqrt{x^{2} + y^{2} + z^{2}}}$

Given the foregoing, the magnetic field can be represented as:

${B(r)} = {\frac{\mu_{0}}{4\; \pi}\left( {\frac{3\; {rym}}{r^{5}} - \frac{m}{r^{3}}} \right)}$

and in the x-y plane (with z=0) following:

$r = \sqrt{x^{2} + y^{2}}$${B_{x}\left( {x,y} \right)} = {{\frac{\mu_{0}m}{4\; \pi}\left( \frac{3{xy}}{r^{5}} \right)} = {\frac{\mu_{0}m}{4\; \pi}\frac{3{xy}}{\left( {x^{2} + y^{2}} \right)^{\frac{5}{2}}}}}$${B_{y}\left( {x,y} \right)} = {{\frac{\mu_{0}m}{4\; \pi}\left( {\frac{3y^{2}}{r^{5}} - \frac{1}{r^{3}}} \right)} = {\frac{\mu_{0}m}{4\; \pi}\frac{{2y^{2}} - x^{2}}{\left( {x^{2} + y^{2}} \right)^{\frac{5}{2}}}}}$B_(z)(x, y) = 0

The zeros of the x-component B_(x)(x,y)=0 are located at x=0 and y=0.The zeros of the y-component B_(y)(x,y)=0 then are 2y²−x²=0

x=√{square root over (2)}y. Therefore a measured zero x-position x₀ ofthe y-component B_(y)(x₀,y₀)=0 can be used to estimate the unknowny-position

${\hat{y}}_{0} = {\frac{x_{0}}{\sqrt{2}}.}$

FIG. 5A snows an example of the magnetic field vector lines (the smallarrows) for a given magnetic dipole moment vector (the large dark arrowin the center). The solid narrow lines crossing in the center indicatethe positions where B_(y)=0 and the arrows x_(1m) and x_(2m) give theorientation of the magnetic sensing array.

Considering the more realistic case where there is some rotation of thedipole moment, again using the x-y plane (z=0), the magnetic dipolemoment m is:

$m = {m\begin{pmatrix}{\sin \; \propto} \\{\cos \; \propto} \\0\end{pmatrix}}$

with a rotation angle α. The magnetic field B is now characterized by x-and y-components:

$B_{x} = \frac{{2\; {\sin (\alpha)}x^{2}} + {3{xy}\; {\cos (\alpha)}} - {{\sin (\alpha)}y^{2}}}{\left( {x^{2} + y^{2}} \right)^{5/2}}$$B_{y} = \frac{{{- 3}\; {xy}\; {\sin (\alpha)}} - {2\; {\cos (\alpha)}y^{2}} + {{\cos (\alpha)}x^{2}}}{\left( {x^{2} + y^{2}} \right)^{5/2}}$

Then solving for a with B_(y)=0 yields:

$\alpha = {{arc}\; {\tan \left( {{1/3}\frac{{{- 2}\; y^{2}} + x^{2}}{xy}} \right)}}$

Now the magnetic field is measured at two x-positions x₁ and x₂ andassuming the same y in the chosen coordinate system:

${\frac{{{- \left( \frac{2}{3} \right)}y^{2}} + {\left( \frac{1}{3} \right)x_{1}^{2}}}{x_{1}y} - \frac{{{- \left( \frac{2}{3} \right)}y^{2}} + {\left( \frac{1}{3} \right)x_{2}^{2}}}{x_{2}y}} = {{0\overset{yields}{->}\hat{y}} = \sqrt{\frac{{x_{1}x_{2}}}{2}}}$

The result is related to the geometric mean of both numbers andsimplifies to the already shown result for x₁=x₂. It should be notedthat now the points of x=0 (black dashed vertical) are different fromthe point of B_(x)=0 (c₁ and c₄) and also different from the moment axis(black arrow).

From the foregoing, FIG. 4 shows a specific example where α=20° and y=2,which gives:

$\hat{y} = {\sqrt{\frac{{1.94 \cdot 4.12}}{2}} = 1.999}$

Putting all the foregoing into a specific efficient algorithm forfinding the skin thickness in terms of the y-coordinate, the distancex_(1m) is from left point B_(y)=0 to point B_(x)=0, and the distancex_(2m) is from right point B_(y)=0 to point B_(x)=0. Then calculate afirst estimate for distance y:

$\hat{y} = \sqrt{\frac{{x_{1\; m}x_{2\; m}}}{2}}$

Calculate an estimate for rotation angle:

$\hat{\propto}{= {\arctan \left( \frac{x_{2m}^{2} - {2{\hat{y}}^{2}}}{3x_{2m}\hat{y}} \right)}}$

Then calculate an estimate for displacement of point B_(x)=0 to x=0

$= {\frac{{- 3} + \sqrt{9 + {8\left( {\tan \mspace{11mu} \hat{\propto}} \right)^{2}}}}{{4\mspace{14mu} \tan}\mspace{11mu} \hat{\propto}}\hat{y}}$

And then update the measured distances:

x ₂ =x _(1m)−

x ₂ =x _(2m)+

from which:

${\hat{y}}^{\prime} = \sqrt{\frac{{x_{1}x_{2}}}{2}}$

Which represents a better estimate for the unknown distance y′. Thealgorithm can be iterated to reduce the result error.

The first three calculations can be rolled into a single step without atrigonometric function:

$= {{{- 1}/8}\frac{x_{1m}{x_{2m}\left( {{- 9} + \sqrt{\frac{{49x_{1m}x_{2m}} + {16x_{1m}^{2}} + {16x_{2m}^{2}}}{x_{1m}x_{2m}}}} \right)}}{x_{1m} - x_{2m}}}$

(with x_(1m)>0). For example, given some rotation angle α=20° and y=2:x_(1m)=2.1759 x_(2m)=3.8841 as shown in FIG. 4. Then start with aninitial y=2.0557. A first iteration gives α=15.48° and y=2.0122. Then asecond iteration improves that giving α=19.03° and y=2.0019, and a thirditeration gets closer yet, with α=19.77° and y=1.9998. FIG. 6 shows agraph of the resulting relative error of the y-coordinate calculationfor specific rotation angles, where the upper line is the initialestimate, the next line down is the improved relative error after oneiteration of the algorithm, the next line down just above the x-axisshows even further reduction in relative error after two iterations, andafter three iterations, the relative error is effectively zero (i.e.,the x-axis).

The algorithm can be modified for only one iteration by multiplying afactor f to the estimation of

:

′=f

FIG. 7 shows a graph of the relative error of the y-coordinatecalculation using such a single iteration weighting factor. Again thetop line in FIG. 7 shows the relative error for the initial estimate,and the lower two lines show the data for a minimum error in theinterval [0°, 45° ] where f=1.177, and for a minimum error in theinterval [0°, 30° ] where f=1.243. This specific single iterationalgorithm cannot later be used for further iterations.

The described method works in a similar manner when the magnetic dipoleof the implanted magnet is parallel to the skin of the patient. In thatsituation, a similar specific efficient algorithm may be used forfinding the skin thickness in terms of the x-coordinate, the distancex_(1m) is from upper point B_(x)=0 to point B_(y)=0, and the distancex_(2m) is from lower point B_(x)=0 to point B_(y)=0, as shown in FIG.5B. Then calculate a first estimate for distance y:

{circumflex over (y)}=√{square root over (2|x _(1m) x _(2m)|)}

Calculate an estimate for rotation angle:

$\hat{\propto}{= {- {\arctan \left( \frac{{\hat{y}}^{2} - {2x_{2m}^{2}}}{3\hat{y}x_{2m}} \right)}}}$

Then calculate an estimate for displacement of point B_(y)=0 to x=0

$= {\frac{{- 3} + \sqrt{9 + {8\left( {\tan \mspace{11mu} \hat{\propto}} \right)^{2}}}}{{2\mspace{14mu} \tan}\mspace{11mu} \hat{\propto}}\hat{y}}$

And then update the measured distances:

x ₁ =x _(1m)−

x ₂ =x _(2m)+

from which:

{circumflex over (y)}′=√{square root over (2|x ₁ x ₂|)}

Here ŷ′ represents a better estimate for the unknown distance y. Thealgorithm can be further iterated to reduce the result error. Similarlyit is possible to combine the first three calculations into a singlestep and to modify for only one iteration by multiplying a factor f tothe estimation of

. Again, this specific single iteration algorithm cannot later be usedfor further iterations.

Specific embodiments may include a further step to identify theorientation of the magnet dipole in relation to the skin of the patient.For example, this identification can be determined by the orientation ofthe magnetic field at the left/upper or right/lower positions. Thedistances x_(1m) and x_(2m) represent the distances on the magneticsensing array between the positions where the magnetic field componentsin x-direction and y-direction or y-direction and x-direction vanish. Inthe case where B_(x)=0 at the left/upper and right/lower point, themagnet dipole orientation is perpendicular to the patient skin and theefficient algorithm for this configuration is used to calculate thedistance y. In the case where B_(y)=0 at the left/upper and right/lowerpoint, the magnet dipole orientation is parallel to the patient skin andthe efficient algorithm for this configuration is used to calculate thedistance y.

The algorithm may be further modified by replacing the iterative stepand angle calculation by a polynomial approximation and subsequentinverse mapping. In FIGS. 5A and 5B the field evaluation lines labelledfrom c₁ to c₄ are shown, where either the x- or the y-component of themagnetic field component vanishes. The lines go through the zero pointand can be expressed by:

${c_{1}\left( {\alpha,x} \right)} = {{{- \frac{{- 3} + \sqrt{9 + {8\left( {\tan \mspace{14mu} \alpha} \right)^{2}}}}{2\mspace{14mu} \tan \mspace{14mu} \alpha}}x} = {{a_{1}(\alpha)}x}}$${c_{4}\left( {\alpha,x} \right)} = {{{- \frac{{- 3} + \sqrt{9 + {8\left( {\tan \mspace{14mu} \alpha} \right)^{2}}}}{2\mspace{14mu} \tan \mspace{14mu} \alpha}}x} = {{a_{4}(\alpha)}x}}$

for the x-component of the magnetic field being zero (B_(x)=0), andexpressed by:

${c_{2}\left( {\alpha,x} \right)} = {{\left( {{{- \frac{3}{4}}\tan \mspace{14mu} \alpha} + {\frac{1}{4}\sqrt{{9\left( {\tan \mspace{14mu} \alpha} \right)^{2}} + 8}}} \right)x} = {{a_{2}(\alpha)}x}}$${c_{3}\left( {\alpha,x} \right)} = {{\left( {{{- \frac{3}{4}}\tan \mspace{14mu} \alpha} - {\frac{1}{4}\sqrt{{9\left( {\tan \mspace{14mu} \alpha} \right)^{2}} + 8}}} \right)x} = {{a_{3}(\alpha)}x}}$

for B_(y)=0. Each line equation c₁ to c₄ consists of a function of theangle α solely and denoted by a₁(α) to a₄(α) and x. Building the ratioof x_(1m) and x_(2m) cancels x out and is a function of the angle αonly. For the case of the orientation of the magnetic dipoleperpendicular to the skin of the patient yields:

$\begin{matrix}{z = \frac{x_{1m}}{x_{2m}}} \\{= \frac{{c_{3}\left( {\alpha,x} \right)} - {c_{1}\left( {\alpha,x} \right)}}{{c_{2}\left( {\alpha,x} \right)} - {c_{31}\left( {\alpha,x} \right)}}} \\{= \frac{{a_{3}(\alpha)} - {a_{1}(\alpha)}}{{a_{2}(\alpha)} - {a_{1}(\alpha)}}} \\{= {f(\alpha)}}\end{matrix}\quad$

This function is invertible and the inverse function can be used tocalculate the angle {circumflex over (α)}=f⁻¹(z). The inverse function,shown in FIG. 8A may be approximated by a polynomial. In one embodimentthe polynomial may be of 8^(th) order. From this, the distance can becalculated by:

$\hat{y} = \frac{x_{1m}}{{\alpha_{3}\left( \hat{\alpha} \right)} - {a_{1}\left( \hat{\alpha} \right)}}$

or alternatively by:

$\hat{y} = \frac{x_{2m}}{{\alpha_{2}\left( \hat{\alpha} \right)} - {a_{1}\left( \hat{\alpha} \right)}}$

Both these functions may be approximated by a polynomial or any otherinterpolation technique known. For example piecewise linearinterpolation or spline interpolation may be used. For the example shownin FIG. 4, given some rotation angle α<=20° and y=2: x_(1m)=2.1759x_(2m)=3.8841, yields for z=x_(1m)/x_(2m) and for {circumflex over(α)}=20.58°. Inserting the angle and calculating the distance yieldsy=1.9933.

In a similar manner the calculation for orientation of the magneticdipole parallel to the patient skin is the distance calculated by:

$\hat{y} = \frac{x_{1m}}{\frac{1}{\alpha_{3}\left( \hat{\alpha} \right)} - \frac{1}{\alpha_{4}\left( \hat{\alpha} \right)}}$

or by:

$\hat{y} = \frac{x_{2m}}{\frac{1}{\alpha_{2}\left( \hat{\alpha} \right)} - \frac{1}{\alpha_{4}\left( \hat{\alpha} \right)}}$

Both these functions may be approximated by a polynomial or any otherinterpolation technique known. For example piecewise linearinterpolation or spline interpolation may be used. And the ratio ofx_(1m) and x_(2m) is again a function of the angle α given by:

$u = {{\frac{x_{1m}}{x_{2m}}==\frac{\frac{1}{a_{3}(\alpha)} - \frac{1}{a_{4}(\alpha)}}{\frac{1}{a_{2}(\alpha)} - \frac{1}{a_{4}(\alpha)}}} = {g(\alpha)}}$

where this function is again invertible and the inverse function, shownin FIG. 8B, can be used to calculate the angle {circumflex over(α)}=g⁻¹(u). The inverse function may be approximated by a polynomial.In one embodiment the polynomial may be of 8^(th) order.

A one dimensional array 900 of magnetic sensors as shown in FIG. 9 A-Bcan be used to make the magnetic field measurements. The fieldevaluation lines need to be aligned so that the zero position of themeasurement is in the middle of the position of the implant magnet 901.As shown in FIG. 9A, this zero position can be found by user interactionof the magnetic array 902 on the skin over the implant magnet 901 withjust a single active sensor 903 in the center and the inactive sensors904 elsewhere. The user moves the array 902 in two dimensions at thezero position in the measurement plane. The field strength can bevisually indicated to the user, for example, using a bar plot, and theuser then moves the array 902 to the position of maximum field strength(indicating that the array is aligned), and measurement with all thesensors and the complete array can then be performed, as shown in FIG.9B.

Rather than relying on user interaction to align the magnetic sensorarray, some embodiments of a one dimensional sensor array can be alignedusing an additional external magnet as shown in FIG. 10 A-C. FIG. 10Ashows a one dimensional sensor array 1000 with an external magnet 1003in the center of a magnetic array 1002 of multiple magnetic sensors1004. The force of the magnetic interaction between the implant magnet1001 and the external magnet 1003 moves the sensor array 1000 into thecorrect measurement position as shown in FIG. 10 A-B. In someembodiments, the effects of the external magnet 1003 may be included inthe measurement procedure, or else the external magnet 1003 may beremoved after the sensor array 1000 has been correctly positioned, asshown in FIG. 10C, and the field strength measurements then taken.

Instead of a one dimensional sensor array, some embodiments may use atwo dimensional array to make the field strength measurements withoutuser interaction. FIG. 11 A-B shows an embodiment of a two dimensionalsensor array 1100 that includes a magnetic array 1102 having two rows ofmagnetic sensors. Initially the sensor array 1100 is placed on the skinapproximately over the implant magnet 1101. The closest active sensors1103 can be used to initially measure the magnetic field while theremain inactive sensors 1104 initially remain off, FIG. 11 A. The zeroposition can be calculated by estimation or interpolation of the fieldmaximum from the measurements of the active sensors 1103. Once theoffset position has been determined, the field measurements can be takenwith all of the sensors active, FIG. 11 B.

The foregoing approaches offer a distance estimation that corresponds tothickness of the skin over the implanted magnet which is numericallystable and can be efficiently computed. This is accomplished by purelypassive measurement without the need to measure the orientation of themagnetic field. Rather it is sufficient to measure the magnetic field inone direction and find those points on the magnetic sensing array wherein that direction the magnetic field component vanishes. This positionon the magnetic measurement array can then be used to apply thealgorithm to easily calculate the distance to the implant magnet.

Embodiments of the invention may be implemented in part in anyconventional computer programming language. For example, preferredembodiments may be implemented in a procedural programming language(e.g., “C”) or an object oriented programming language (e.g., “C++”,Python). Alternative embodiments of the invention may be implemented aspre-programmed hardware elements, other related components, or as acombination of hardware and software components.

Embodiments can be implemented in part as a computer program product foruse with a computer system. Such implementation may include a series ofcomputer instructions fixed either on a tangible medium, such as acomputer readable medium (e.g., a diskette, CD-ROM, ROM, or fixed disk)or transmittable to a computer system, via a modem or other interfacedevice, such as a communications adapter connected to a network over amedium. The medium may be either a tangible medium (e.g., optical oranalog communications lines) or a medium implemented with wirelesstechniques (e.g., microwave, infrared or other transmission techniques).The series of computer instructions embodies all or part of thefunctionality previously described herein with respect to the system.Those skilled in the art should appreciate that such computerinstructions can be written in a number of programming languages for usewith many computer architectures or operating systems. Furthermore, suchinstructions may be stored in any memory device, such as semiconductor,magnetic, optical or other memory devices, and may be transmitted usingany communications technology, such as optical, infrared, microwave, orother transmission technologies. It is expected that such a computerprogram product may be distributed as a removable medium withaccompanying printed or electronic documentation (e.g., shrink wrappedsoftware), preloaded with a computer system (e.g., on system ROM orfixed disk), or distributed from a server or electronic bulletin boardover the network (e.g., the Internet or World Wide Web). Of course, someembodiments of the invention may be implemented as a combination of bothsoftware (e.g., a computer program product) and hardware. Still otherembodiments of the invention are implemented as entirely hardware, orentirely software (e.g., a computer program product).

Although various exemplary embodiments of the invention have beendisclosed, it should be apparent to those skilled in the art thatvarious changes and modifications can be made which will achieve some ofthe advantages of the invention without departing from the true scope ofthe invention.

What is claimed is:
 1. A method of estimating skin thickness over animplanted magnet comprising: defining a plane perpendicular to the skinof a patient over an implanted magnet, characterized by x- and y-axiscoordinates; measuring magnetic field strength of the implanted magnetusing an array of magnetic sensors on the skin of the patient;determining from the measured magnetic field strength at least onex-axis coordinate in the plane for at least one y-axis zero position onthe array where a y-axis component of the measured magnetic fieldstrength is zero; and calculating a y-axis coordinate of the at leastone y-axis zero as a function of the at least one x-axis coordinate,whereby the y-axis coordinate represents thickness of the skin over theimplanted magnet.
 2. The method according to claim 1, wherein x-axisco-ordinates are determined for two y-axis zero positions.
 3. The methodaccording to claim 1, wherein the magnetic field strength is measuredusing a one dimensional sensor array.
 4. The method according to claim3, wherein the sensor array is aligned by user interaction before takingthe magnetic field strength measurements.
 5. The method according toclaim 3, wherein the sensor array is aligned without user interactionbefore taking the magnetic field strength measurements.
 6. The methodaccording to claim 1, wherein the magnetic field strength is measuredusing a two dimensional sensor array.
 7. The method according to claim1, wherein calculating the y-axis coordinate is further a function ofmagnetic dipole moment rotation angle.
 8. The method according to claim1, wherein calculating the y-axis coordinate is based on an iterativecalculation process.
 9. The method according to claim 1, whereincalculating the y-axis coordinate is based on a trigonometriccalculation process.
 10. The method according to claim 1, whereincalculating the y-axis coordinate is based on a non-trigonometriccalculation process.
 11. The method according to claim 1, whereincalculating the y-axis coordinate is based on single step non-iterativecalculation process.
 12. The method according to claim 11, whereincalculating the y-axis coordinate is based on an inverse mapping for theangle.
 13. The method according to claim 12, wherein the polynomialfunction is based on the ratio of the at least two x-axis coordinates.14. The method according to claim 13, wherein calculating the inversemapping is based on a polynomial function.